/*     */ package com.xhgk.utis;
/*     */ 
/*     */ import java.lang.reflect.Field;
/*     */ import java.text.ParseException;
/*     */ import java.text.SimpleDateFormat;
/*     */ import java.util.Date;
/*     */ import java.util.List;
/*     */ import java.util.Map;
/*     */ import java.util.Set;
/*     */ import net.sf.json.JSONArray;
/*     */ import net.sf.json.JSONObject;
/*     */ import net.sf.json.JsonConfig;
/*     */ import net.sf.json.util.CycleDetectionStrategy;
/*     */ import net.sf.json.xml.XMLSerializer;
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ public class JsonMyUtil
/*     */ {
/*  28 */   public static String dateForma = "yyyy-MM-DD HH:mm:ss.SS";
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String array2json(Object[] objects) {
/*  38 */     JSONArray jsonArray = JSONArray.fromObject(objects);
/*  39 */     return jsonArray.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String list2json(List list) {
/*  50 */     JSONArray jsonArray = JSONArray.fromObject(list);
/*  51 */     return jsonArray.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String set2json(Set set) {
/*  62 */     JSONArray jsonArray = JSONArray.fromObject(set);
/*  63 */     return jsonArray.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String map2json(Map map) {
/*  75 */     JSONObject jsonObject = JSONObject.fromObject(map);
/*  76 */     return jsonObject.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String object2json(Object object) {
/*  88 */     JSONObject jsonObject = JSONObject.fromObject(object);
/*  89 */     return jsonObject.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static String xml2json(String xml) {
/* 100 */     JSONArray jsonArray = (JSONArray)(new XMLSerializer()).read(xml);
/* 101 */     return jsonArray.toString();
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static JsonConfig configJson(String[] excludes) {
/* 111 */     JsonConfig jsonConfig = new JsonConfig();
/* 112 */     jsonConfig.setExcludes(excludes);
/* 113 */     jsonConfig.setIgnoreDefaultExcludes(true);
/* 114 */     jsonConfig.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT);
/* 115 */     return jsonConfig;
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static <T> T jsonToObject(String jsonData, Class<T> clazz) {
/* 128 */     jsonData = jsonData.substring(1, jsonData.length() - 1).replaceAll("\"", "");
/* 129 */     T obj = null;
/*     */     try {
/* 131 */       obj = clazz.newInstance();
/* 132 */       String[] split = jsonData.split(",");
/* 133 */       for (int i = 0; i < split.length; i++) {
/* 134 */         String[] split2 = split[i].split(":");
/* 135 */         Field field = clazz.getDeclaredField(split2[0]);
/* 136 */         field.setAccessible(true);
/* 137 */         field.set(obj, typeConverter(field, split2[1]));
/*     */       } 
/* 139 */     } catch (InstantiationException e) {
/* 140 */       e.printStackTrace();
/* 141 */     } catch (IllegalAccessException e) {
/* 142 */       e.printStackTrace();
/* 143 */     } catch (NoSuchFieldException e) {
/* 144 */       e.printStackTrace();
/* 145 */     } catch (SecurityException e) {
/* 146 */       e.printStackTrace();
/*     */     } 
/* 148 */     return obj;
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public static Object typeConverter(Field type, Object fieldValue) {
/* 156 */     String typeName = type.getType().getSimpleName().toLowerCase();
/* 157 */     if ("byte".equalsIgnoreCase(typeName))
/* 158 */       return Byte.valueOf(Byte.parseByte(fieldValue.toString())); 
/* 159 */     if ("short".equalsIgnoreCase(typeName))
/* 160 */       return Short.valueOf(Short.parseShort(fieldValue.toString())); 
/* 161 */     if ("long".equalsIgnoreCase(typeName))
/* 162 */       return Long.valueOf(Long.parseLong(fieldValue.toString())); 
/* 163 */     if ("boolean".equalsIgnoreCase(typeName))
/* 164 */       return Boolean.valueOf(Boolean.parseBoolean(fieldValue.toString())); 
/* 165 */     if ("float".equalsIgnoreCase(typeName))
/* 166 */       return Float.valueOf(Float.parseFloat(fieldValue.toString())); 
/* 167 */     if ("double".equalsIgnoreCase(typeName)) {
/* 168 */       return Double.valueOf(Double.parseDouble(fieldValue.toString()));
/*     */     }
/* 170 */     if (typeName.contains("Date")) {
/* 171 */       return DateConverter(fieldValue.toString());
/*     */     }
/* 173 */     if (typeName.equals("char") || typeName.equals("character")) {
/* 174 */       return fieldValue.toString().toCharArray();
/*     */     }
/* 176 */     if (typeName.equals("int") || typeName.equals("integer")) {
/* 177 */       return Integer.valueOf(Integer.parseInt(fieldValue.toString()));
/*     */     }
/* 179 */     return fieldValue;
/*     */   }
/*     */   
/*     */   public static Date DateConverter(String source) {
/*     */     Date parse;
/* 184 */     SimpleDateFormat sdf = new SimpleDateFormat(dateForma);
/*     */     
/*     */     try {
/* 187 */       parse = sdf.parse(source);
/* 188 */     } catch (ParseException e) {
/* 189 */       throw new RuntimeException(e);
/*     */     } 
/* 191 */     return parse;
/*     */   }
/*     */ }


/* Location:              D:\library\tomcat\webapps\ROOT\WEB-INF\classes\!\com\xhg\\utis\JsonMyUtil.class
 * Java compiler version: 5 (49.0)
 * JD-Core Version:       1.1.3
 */